% Preâmbulo
\documentclass[a4paper, 12pt]{abnt}

\usepackage[brazil]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{dsfont}
\usepackage{amssymb,amsmath}
\usepackage{multirow}
\usepackage[alf]{abntcite}
\usepackage[pdftex]{color, graphicx}
\usepackage{colortbl}
\usepackage{url}
\usepackage{abnt-alf}
\usepackage{abntcite}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{verbatim}
\usepackage{listings}
\usepackage{caption, subcaption}

\usepackage{monografia}


% Redefinição de instruções
\floatname{algorithm}{Algoritmo}
\renewcommand{\algorithmicrequire}{\textbf{Entrada:}}
\renewcommand{\algorithmicensure}{\textbf{Saída:}}
\renewcommand{\algorithmicend}{\textbf{fim}}
\renewcommand{\algorithmicif}{\textbf{se}}
\renewcommand{\algorithmicthen}{\textbf{então}}
\renewcommand{\algorithmicelse}{\textbf{senão}}
\renewcommand{\algorithmicfor}{\textbf{para}}
\renewcommand{\algorithmicforall}{\textbf{para todo}}
\renewcommand{\algorithmicdo}{\textbf{faça}}
\renewcommand{\algorithmicwhile}{\textbf{enquanto}}
\renewcommand{\algorithmicloop}{\textbf{loop}}
\renewcommand{\algorithmicrepeat}{\textbf{repetir}}
\renewcommand{\algorithmicuntil}{\textbf{até que}}
\renewcommand{\algorithmiccomment}[1]{\% #1}


% Definição da lista de símbolos.
% \simb[entrada na lista de símbolos]{simbolo}:
% Escreve o simbolo no texto e uma entrada na lista de símbolos.
% Se o parâmetro opcional e omitido, usa-se o parâmetro obrigatório.
\newcommand{\simb}[2][]
{%
  \ifthenelse{\equal{#1}{}}
  {\addcontentsline{los}{simbolo}{#2}}
  {\addcontentsline{los}{simbolo}{#1}}#2
}
% Para aceitar comandos com @ no nome
\makeatletter 
% \listadesimbolos: comando que imprime a lista de símbolos
\newcommand{\listadesimbolos}
{
  \pretextualchapter{Lista de símbolos}
  {\setlength{\parindent}{0cm}
  \@starttoc{los}}
}
% Como a entrada sera impressa
\newcommand\l@simbolo[2]{\par #1}
\makeatother


% Definição da lista de abreviaturas e siglas
% \abrv[entrada na lista de símbolos]{abreviatura}:
% Escreve a sigla/abreviatura no texto e uma entrada na lista de abreviaturas e siglas.
% Se o parâmetro opcional e omitido, usa-se o parâmetro obrigatório.
\newcommand{\abrv}[2][]
{%
  \ifthenelse{\equal{#1}{}}
  {\addcontentsline{loab}{abreviatura}{#2}}
  {\addcontentsline{loab}{abreviatura}{#1}}#2
}
% Para aceitar comandos com @ no nome
\makeatletter 
% \listadeabreviaturas: comando que imprime a lista de abreviaturas e siglas
\newcommand{\listadeabreviaturas}
{
  \pretextualchapter{Lista de abreviaturas e siglas}
  {\setlength{\parindent}{0cm}
  \@starttoc{loab}}
}
% Como a entrada sera impressa
\newcommand\l@abreviatura[2]{\par #1}
\makeatother


% \listofalgorithms: comando que imprime a lista de algoritmos
\renewcommand{\listalgorithmname}{Lista de algoritmos}


% Hifenização de palavras feita de forma incorreta pelo LaTeX
\hyphenation{PYTHON ou-tros}


%\includeonly{
%front_pages/capa,
%front_pages/folha_rosto,
%front_pages/folha_aprovacao,
%front_pages/dedicatoria,
%front_pages/agradecimentos,
%front_pages/epigrafe,
%front_pages/resumo,
%front_pages/abstract,
%front_pages/listagens,
%chapters/Introducao,
%chapters/Capitulo2,
%chapters/Capitulo3,
%chapters/Capitulo4,
%chapters/Capitulo5,
%chapters/Consideracoes,
%chapters/referencias_page,
%chapters/ApendiceA,
%chapters/AnexoA
%}

\setcounter{tocdepth}{2}

% Início do documento
\begin{document}

  \frenchspacing
  
  \include{front_pages/capa}
  \include{front_pages/folha_rosto}	
  \include{front_pages/folha_aprovacao}	
  \include{front_pages/agradecimentos}
  \include{front_pages/epigrafe}
  \include{front_pages/resumo}
  \include{front_pages/abstract}
  \include{front_pages/listagens}
  
  \include{chapters/introducao}
  \include{chapters/sistemas_embarcados}
  \include{chapters/risco}
  \include{chapters/plataforma_base}
  \include{chapters/llvm}
  \include{chapters/risco_llvm}
  \include{chapters/analise_codigo}
  
  \include{chapters/consideracoes}
  \include{chapters/referencias_page}
  
  \include{chapters/apendice_instrucoes}
  
  \newpage

\end{document}
